package com.blrs.service.enterprise.seas;

import java.util.List;

import com.blrs.VO.ClassVO;
import com.blrs.common.core.domain.AjaxResult;
import com.blrs.domain.HighSeas;

/**
 * 公海管理Service接口
 * 
 * @author ruoyi
 * @date 2023-08-08
 */
public interface IHighSeasService 
{
    /**
     * 查询公海管理
     * 
     * @param enterpriseId 公海管理主键
     * @return 公海管理
     */
    public HighSeas selectHighSeasByEnterpriseId(String enterpriseId);

    /**
     * 查询公海管理列表
     * 
     * @param highSeas 公海管理
     * @return 公海管理集合
     */
    public List<HighSeas> selectHighSeasList(HighSeas highSeas);

    /**
     * 新增公海管理
     *
     * @param highSeas 公海管理
     * @return 结果
     */
    public AjaxResult insertHighSeas(HighSeas highSeas) throws NoSuchFieldException, IllegalAccessException;

    /**
     * 修改公海管理
     *
     * @param highSeas 公海管理
     * @return 结果
     */
    public AjaxResult updateHighSeas(HighSeas highSeas) throws NoSuchFieldException, IllegalAccessException;

    /**
     * 批量删除公海管理
     * 
     * @param enterpriseIds 需要删除的公海管理主键集合
     * @return 结果
     */
    public int deleteHighSeasByEnterpriseIds(String[] enterpriseIds);

    /**
     * 删除公海管理信息
     * 
     * @param enterpriseId 公海管理主键
     * @return 结果
     */
    public int deleteHighSeasByEnterpriseId(String enterpriseId);

    /**
     * 企业信息转成公海信息
     *
     * @param enterpriseIds
     * @return
     */
    AjaxResult convertHighSeas(String[] enterpriseIds);

    AjaxResult importExcel(List<HighSeas> list) throws NoSuchFieldException, IllegalAccessException;

    void updateClassIds(String[] enterIds, String classId);

    int editBusinessManager(ClassVO classVO);

    String getMaxEnterpriseNo(Long orgId);

    List<HighSeas> selectHighSeasListByIndex(Long orgId);

    List<String> selectSourceByBelongTo(Long orgId);
}
